Modem digital oscilloscopes have become an indispensable part of the arsenal of test equipment. Nevertheless, the standard of comparison for ease of use continues to be the venerable conventional analog oscilloscope, with its easily understood control scheme and its generally trustworthy and easily interpreted display. The purveyors of digital oscilloscopes continue to seek ways to make their products emulate the desirable aspects of conventional 'scopes while retaining the unique advantages available only with digital 'scopes.
The extent to which such emulation of any particular analog oscilloscope feature can be achieved depends a lot upon the internal architecture of the digital 'scope, of which there are several basic types. Consider, for example, the manner in which intensity variations in the trace of a conventional 'scope convey useful information in a repetitive trace. Fast edges appear dimmer than places where the trace transitions more leisurely. Waveform features that repeat regularly are brighter than ones that repeat irregularly or less frequently. For example, a pulse may have a bright trace that is of the generally correct shape and amplitude, but includes a superimposed faint and mis-shapen version. This informs the operator that every so often something unusual is occurring. True, it may be difficult or impossible to get the conventional 'scope to trigger on just the abnormal condition, but at least it has not lied to the operator; the suspicious trace is there to be viewed, however faintly. Even if one is compelled to move a bright base line off-screen, turn the intensity way up, and dim the room lights to see the anomaly better, the point is that the trusty analog 'scope is less a filter of information and more of a transparent window.
Most digital oscilloscopes, of whatever sampling architecture, have the potential for mimicking the analog 'scope's difference in trace intensity that results from the degree of regularity with which the pattern formed by the trace repeats itself at the same place on the screen. In particular, the digital oscilloscope architecture known as random repetitive sampling has an excellent such potential. In that type of 'scope a generally repetitive waveform is repeatedly regularly sampled, although not necessarily densely during any particular repetition. The various groups (repetitions) of samples are not allowed to remain at the same integral multiples of the sample time interval. Instead, each group's location on the time axis has some small and deliberately introduced random amount of offset relative to a trigger event. Thus, taken as a whole, the entire collection of samples is denser than the sample rate would otherwise imply. This is because the various groups may be "aligned", and in effect merged, by taking their individual group offsets also taken into account. Such "alignment" is essentially a matter of interpretation "after the fact", and need not involve shifting the contents of acquisition memory. Properly interpreted, the overall collection in the acquisition memory may be thought of as the result of merging the various groups, and corresponds in part to what the analog 'scope does when it writes on the CRT a series of generally similar or identical consecutive individual traces, one on top of the other, to form the bright trace so familiar to the user. To form a viewable display the random repetitive digital scope must take the 'scope's control settings (sweep speed, vertical sensitivity, etc.) into account, and put some subset of the data in the acquisition memory into a frame buffer whose addressable locations are in correspondence with the various pixel locations of a raster scanned display. What is actually stored in such an addressable frame buffer location can include an intensity value.
It is during this process that a digital 'scope can vary the intensity of the individual pixels written into the frame buffer, based upon various algorithmic criteria developed by the designers of the product. Suppose, for example, that the n.sub.th pixel position (call that, say, time `x`) along the X axis has three different Y locations that are to be illuminated. This means that during at least one group of samples the value y.sub.1 was obtained at time x. During at least one other group of samples the value y.sub.2 was obtained, as was y.sub.3 during at least still a different group. Now suppose that there are twenty-five groups, and that y.sup.1 occurred only twice, y.sub.2 three times, and y.sub.3 twenty times. These circumstances are consistent with a principal phase of the input waveform passing through y.sub.3, while anomalous phases occasionally pass through y.sub.1 and y.sub.2. Clearly, the pixel locations for y.sub.1 and y.sub.2 should have less intensity than that for y.sub.3. "Intensity emulation" is a term by which we may refer that type of manipulation. Clearly, there are other conditions in the sampled data that may also cause the trace intensity to be modified pursuant to the idea of intensity emulation.
An additional bit of background information will be useful in appreciating what is to follow. Let us look closer at the acquisition memory and its relationship to the frame buffer. The acquisition memory consists of a number of acquisition records. There may be a large number of such acquisition records, perhaps over one hundred. Each record is made up of a number of consecutively obtained samples. The number of samples in an acquisition record may be many times the number of pixel positions along the X axis of the display. This allows the user to stop the 'scope and then pan and zoom within a displayed waveform of interest, provided, of course, that there is enough captured data to create the desired view. For this and other reasons, it is usually the case that the granularity of the acquisition records (sampling time interval or limiting horizontal resolution) is not in direct one-to-one correspondence with the possible horizontal pixel positions of the display (the families of addressable Y locations of the frame buffer, each family corresponding to a given X location). Accordingly, and for each X position, there may be several consecutive samples within each acquisition record that contribute to the particular Y result(s) at that X position.
The same phenomenon occurs m the other major digital oscilloscope architecture: direct sequence sampling. In this type of 'scope a high speed sampling mechanism provides (in "real time") a dense single acquisition record, which can be quite long, perhaps several megabytes. This is the type of 'scope used when high "single shot" bandwidth is needed. It is still the case, however, that after the trigger event the captured data must be formatted to form a collection of illuminated pixels in a raster of, say, 256 lines by 512 or 1024 pixel positions along a line. Thus, once again, depending upon the settings of the controls, we have a plurality of consecutive samples contributing; to one or more Y values to be illuminated at a given X location in the displayed trace. It follows that intensity emulation is a possibility in direct sequence sampling digital oscilloscopes as well.
Intensity emulation is all well and good, but alas, other factors emerge to limit how well such intensity emulation works, and indeed, can even cause it to be misleading, which to some persons is worse than doing no intensity emulation at all. In other words, it can happen that the digital oscilloscope itself introduces spurious intensity changes into the trace, leaving the user to wonder just how useful the intensity emulation feature is, anyway, and just what else is there about this new and "better" oscilloscope that cannot be trusted?
As an example, a major source of spurious intensity emulation in oscillographic displays may be traced to the Analog to Digital (A/D) conversion process. The performance specifications of the Analog to Digital Converters (ADC's) used in low cost digital oscilloscopes can leave a lot to be desired, especially when it comes to linearity.
An ADC is an element that responds to an input voltage that can vary in arbitrarily small amounts by producing a corresponding discrete digital code. If there are 256 codes, and the input range is from zero to one volt, then there is an obvious correspondence that ought to obtain between inputs and outputs. The basis of this correspondence is that there are ordered 256 codes (a zero code and 255 non-zero codes), 255 transitions between the extremes, and that each time a monotonically increasing input value V.sub.in (0.ltoreq.V.sub.in.ltoreq.1) advances by 1/256.sub.th of a volt the output should increment by one code value, which could be expressed in a Gray code. Non-linearities occur when too much or not enough advance is required to produce an increment. In the first case we may say the code concerned is `fat`, and say that it is `thin` in the other case. The degree to which a code is fat or thin may be indicated in units of nominal code width. A code with a width of `1` is neither fat nor thin. A code of width 1.2 is twenty percent wider than normal, and is fat, while one of width 0.7 is definitely thin.
So, consider a digital oscilloscope having an ADC with significant non-linearity. Now apply a precision triangle wave to the input, and adjust the controls such that several cycles are visible on the screen. Let there be several consecutive locations in each acquisition record corresponding to each column of pixel positions along the X axis. Many different Y values may be represented, and they will each be illuminated (as if along a vertical line in the displayed trace), although with an, intensity that is a function of their frequency of occurrence. Suppose that the actual analog signal value for an X pixel position often fell on a fat code. Then that fat code will be over represented in those locations within the data acquisition memory corresponding to that X pixel position, and we can expect that any thin codes will be under represented. That is, if a uniformly distributed signal is applied to a perfect ADC then a uniform distribution of digital codes would be expected to occur as a result. But non-linearity in the ADC will produce a corresponding skew in the resulting distribution. These disparities fool the intensity emulation mechanism and produce visible spurious intensity artifacts in the trace, especially when there occur consecutive groups or patterns of thin and/or fat codes, which can happen with certain systemic perversions within an ADC. Over represented fat codes can produce spurious bright locations in the trace, while under represented thin codes can produce spurious dim locations. It can be shown that even "nominal" amounts of ADC non-linearity can produce spurious intensity artifacts that will sometimes swamp out the legitimate intensity variations.
It will be appreciated that any digital oscilloscope architecture wherein either actual consecutive or construed as consecutive (through merging) samples are grouped together to arrive at Y values for a common displayed X pixel location, may fall prey to these or similar artifacts produced by non-linearity in the ADC. All that is required is an attempt to apportion an intensity property among a distribution of codes having unequal weights.
It would be desirable if such anomalous artifacts in intensity emulation could be reduced or eliminated while tolerating the non-linearities of low cost ADC's, and thus avoid incurring the extra cost of ADC's having either less non-linearity or, failing that, having higher precision. (Presumably the higher precision would allow the least significant bit or two to be thrown away, taking any non-linearity with it. How gross.) What to do?